// tb_mqtt_client.h
#pragma once

#include "mqtt_client.h"
#include "esp_log.h"
#include <stdbool.h>
#include "tb_rpc.h"

#ifdef __cplusplus
extern "C" {
#endif

/**
 * @brief 协调器启动完成后的回调函数类型
 */
typedef void (*mqtt_event_handler_t)(esp_mqtt_event_handle_t event);

// 初始化并连接 ThingsBoard MQTT 服务器
void tb_mqtt_start(const char *uri, const char *token,mqtt_event_handler_t customer_mqtt_event);

// 判断是否连接成功
bool tb_is_connected(void);

// 发送遥测数据（JSON 格式字符串）
bool tb_send_telemetry(const char *json_payload);

// 获取当前 MQTT 客户端句柄
esp_mqtt_client_handle_t tb_get_client(void);

#ifdef __cplusplus
}
#endif
